The quality or acceptability of a color print is a function of how the human eye and mind receives and perceives the colors of the original or source image and compares it to the colors of the print. The human eye has three color receptors that sense red light, green light, and blue light. These colors are known as the three primary colors of light. These colors can be reproduced by one of two methods, additive color mixing and subtractive color mixing, depending on the way the colored object emits or reflects light.
In the method of additive color mixing, light of the three primary colors is projected onto a white screen and mixed together to create various colors. A well known exemplary device that uses the additive color method is the color television. In the subtractive color method, colors are created from the three colors yellow, magenta and cyan, that are complementary to the three primary colors. The method involves progressively subtracting light from white light. Examples of subtractive color mixing are color photography and color printing.
Modern electronic printers are capable of producing quite complex and interesting page images. The pages may include text, graphics, and scanned or computer-generated images. The image of a page is described as a collection of simple image components or primitives (characters, lines, bitmaps, colors). Complex pages can then be built by specifying a large number of the basic image primitives. This is done by a page description language such as PostScript. The job of the electronic printer's software is to receive, interpret and draw each of the imaging primitives for the page. The drawing, or rasterization must be done on an internal, electronic model of the page. All image components must be collected and the final page image must be assembled before marking can begin. This electronic model of the page is often constructed in a data structure called an image buffer. The data contained is in the form of an array of color values called pixels. Each pixel corresponds to a spot which can be marked on the actual page and the pixel's value gives the color that should be used when marking. The pixels are organized to reflect the geometric relation of their corresponding spots. They are usually ordered such as to provide easy access in the raster pattern required for marking.
In generating color pictorial images, a large number of colors and moderate spatial resolution are generally required to achieve a high-quality image. Because the eye can detect approximately 100 intensity levels, i.e., for three color separations, seven bits per color separation per pixel, imaging systems should support at least this number of intensity levels. Generally, however, imaging systems support 256 different intensity levels. The 256 intensity levels supported by an imaging system performing three color separations for a full-color image correspond to eight bits per color separation, i.e., twenty-four bits per pixel. For high-quality renditions of real-life scenes, an imaging system supporting at least 100 intensity levels detectable by the eye requires less than 200 pixels per inch to achieve an image having a sufficient level of spatial resolution.
When material such as textual material and synthetic graphic material is being imaged, the accuracy of color is not nearly so important achieve a high-quality image, particularly since the color used is generally a (constant black). High spatial resolution is, however, needed to provide images having crisp, clear edges.
A desirable imaging system would support high-quality color pictorial images, synthetic graphic material and textual material. Heretofore, such an imaging system would necessarily have both a large color space, i.e., many bits per pixel, and a high-resolution level, i.e., many pixels, thus resulting in requirements for extensive memory capability and high bandwidth.
It is highly desirable for an imaging system to reduce the amount of memory required to construct a full color page image for printing and maintain quality or acceptability of the color print. Architectures for high-quality color printing require construction of a continuous-tone page image prior to marking. However, the cost of a continuous-tone image buffer can be troubling in cases of high quality printers which require very high resolutions or in cases of low-end printers where cost considerations dominate. In these cases it is desirable to construct the page image in a compressed form. Current techniques can do this by collecting and sorting compressed representations of the image primitives and then assembling each scan line when marking, but cannot guarantee that a complex page can be stored or printed. U.S. Pat. No. 5,276,532 to Harrington discloses a method to reduce the amount of memory required to construct a full color page image for printing. A single, split-level frame buffer used in a color imaging system includes a plurality of pixels having a first resolution level. A plurality of bits are provided for each pixel so as to enable accurate pictorial imaging. The frame buffer includes pixels having a resolution level which is higher than the first resolution level. Pixels on the edges of objects being imaged are replaced by the higher resolution pixels to provide images wherein object edges have high-resolution while object interiors have moderate resolution. In using a single frame buffer, images having more than one level of resolution are generated which do not require separation and merging operations. This patent is herein incorporated by reference. U.S. patent application Ser. No. 08/083,581 to Harrington discloses a method and apparatus for achieving an ultra-small or compressed image buffer that images at half the resolution and then scales by two to achieve the device resolution. Acceptable quality can be maintained by identifying edge and interior portions of the page image and using this information to scale intelligently. A split-level frame buffer provides this identification of the image components. This patent application is herein incorporated by reference.
The amount of memory can be further reduced by using block truncation. (Block truncation) coding which is a well known technique for compressing gray scale images. This technique divides the image into non-overlapping 4.times.4 pixel cells. Each cell is then analyzed to determine the two most representative gray levels or shades. The cell is then approximated by one which contains pixels at only those two gray levels. The cell can be encoded as the two gray levels (or the average of the two shades and their deviation from this mean) and a 4.times.4 element bit map that indicates which gray level is assigned to each pixel. This compression technique can reduce image data from 8 bits per pixel to 2 bits per pixel or less. However, the method suffers from problems at high contrast edges. The technique will force the pixels along the edge into the two contrasting shades yielding a sharp distinction along the pixel boundaries resulting in an artificially sharp jagged edge.
Another technique is to use three shades for the block, the two representative shades and their average is then used for pixels on the boundary between the two high-contrast regions. But this approach implies that there are now three possible shades for each pixel in the block and a simple bitmap is no longer adequate for specifying the pixel shades. This technique solves this subproblem by building a small table of representative three-shade patterns and mapping the actual block structure into the closest matching table entry. The block is then encoded as the two representative shades and the table index. This approach of using a table of representative patterns entails further approximation and degradation of the image results.
A simple, relatively inexpensive, and accurate imaging system is desired which has the capability for encoding a color image which provides an exact specification of the colors within the image. It is also desirable for an imaging system to generate high-quality images without significantly increasing the complexity of the system.
Various techniques for processing images have hereinbefore been devised as illustrated by the following disclosures, which may be relevant to certain aspects of the present invention:
U.S. Pat. No. 4,782,399 to Sato, discloses an image processing apparatus having image input systems for input of image data of high and low-resolution. A processor discriminates an edge block in the image data, and a filter performs edge detection of an output from a low-resolution image input system. A signal selection circuit selects a signal from high-resolution and low-resolution image input systems and produces the selected signal as an output signal so as to reproduce optimum quality images for all types of original images including character and half tone images. The Sato apparatus thus processes the high resolution and low resolution image data differently. The Sato apparatus, accordingly, is complex in operation.
U.S. Pat. No. 4,703,363 to Kitamura discloses an apparatus for smoothing jagged border lines of an image by providing weight coefficients to a center pixel and surrounding pixels. Values are then obtained for designating middle level densities to be used for the smoothing in accordance with the sum of the coefficients. The apparatus does not provide an imaging system which supports pictorial material, synthetic graphic material and textual material without requiring extensive memory capability and high bandwidth.
U.S. Pat. No. 4,618,990 to Sieb, Jr., et al discloses a method of edge enhancement of digitized fluorographic images by defining frequency components to be enhanced to sharpen images. The frequency components correspond to the frequency response of the edge enhancement filter. An edge map results which corresponds to frequency components at edges which are added to corresponding pixels in the original image, resulting in sharpened edges. The method disclosed by the reference thus requires independent processing at edges and subsequent addition of a resultant edge map in the original image.
U.S. Pat. No. 4,682,869 to Itoh et al discloses an image processing system allowing communication with input and output devices having varying resolutions by converting input images into images having any desired level of resolution up to that of the input. The system thus requires a plurality of devices having varying resolutions to achieve a desired level of resolution in a resultant image.